From: Florian Müllner Date: Mon, 1 Feb 2021 15:28:49 +0000 (+0100) Subject: workspaceThumbnails: Center thumbnails in workspace navigator X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~616^2^2~514 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=de299f0a9069072d4c69d0fa2975e3c3a928068c;p=gnome-shell.git workspaceThumbnails: Center thumbnails in workspace navigator We always request a natural width based on the maximum thumbnail scale, but may very well use a smaller scale when allocating. This currently results in thumbnails being off center, fix this by distributing any extra space evenly before allocating thumbnails. Part-of: --- diff --git a/js/ui/workspaceThumbnail.js b/js/ui/workspaceThumbnail.js index 73f25593b..46de36fa4 100644 --- a/js/ui/workspaceThumbnail.js +++ b/js/ui/workspaceThumbnail.js @@ -1302,6 +1302,13 @@ var ThumbnailsBox = GObject.registerClass({ const thumbnailWidth = Math.round(thumbnailHeight * ratio); const roundedVScale = thumbnailHeight / portholeHeight; + // We always request size for MAX_THUMBNAIL_SCALE, distribute + // space evently if we use smaller thumbnails + const extraWidth = + (MAX_THUMBNAIL_SCALE * portholeWidth - thumbnailWidth) * nWorkspaces; + box.x1 += Math.round(extraWidth / 2); + box.x2 -= Math.round(extraWidth / 2); + let indicatorValue = this._scrollAdjustment.value; let indicatorUpperWs = Math.ceil(indicatorValue); let indicatorLowerWs = Math.floor(indicatorValue);